using System;
using System.Collections.Generic;
using System.Text;

namespace MakeIT.Alf.Site.Entidades
{
	public class CidadeVO
	{
		// Impedir o uso de new para esta classe
		protected CidadeVO() { }

		// Cria uma instancia desta classe
		public static CidadeVO CreateVO()
		{
			CidadeVO cidade = new CidadeVO();
			cidade.idEstadoVO = EstadoVO.CreateVO();
			return cidade;
		}
		public static CidadeVO CreateVO(int idCidade, string cidade)
		{
			CidadeVO obj = CreateVO();
			obj.idCidade = idCidade;
			obj.cidade = cidade;
			return obj;
		}
		// Descrição amigavel do conteudo deste objeto
		public override string ToString()
		{
			return (idCidade!=null?idCidade.ToString():"") + "-" + (cidade!=null?cidade.ToString():"");
		}
		// Retorna PK concatenada com ";"
		public string PKString
		{
			get { return idCidade.ToString(); }
		}

		#region MEMBROS DA CLASSE
		public int idCidade
		{
			get { return this._idCidade; }
			set { this._idCidade = value; }
		}
		private int _idCidade;
		public string cidade
		{
			get { return this._cidade; }
			set { this._cidade = value; }
		}
		private string _cidade;
		public int idEstado
		{
			get { return this._idEstado; }
			set { this._idEstado = value; 
			      if(value!=null) this.idEstadoVO.idEstado = (int)value; }
		}
		private int _idEstado;
		public DateTime cadastro
		{
			get { return this._Cadastro; }
			set { this._Cadastro = value; }
		}
		private DateTime _Cadastro;
		public string cadastradoPor
		{
			get { return this._CadastradoPor; }
			set { this._CadastradoPor = value; }
		}
		private string _CadastradoPor;
		public DateTime edicao
		{
			get { return this._Edicao; }
			set { this._Edicao = value; }
		}
		private DateTime _Edicao;
		public string editadoPor
		{
			get { return this._EditadoPor; }
			set { this._EditadoPor = value; }
		}
		private string _EditadoPor;
		public EstadoVO idEstadoVO
		{
			get { return this._idEstadoVO; }
			set { this._idEstadoVO = value; }
		}
		private EstadoVO _idEstadoVO;
		#endregion
	}
}
